package com.zw.mes.entity.shipments;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.zw.mes.base.BaseModel;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description: 半成品库出入库记录表
 * @Author: liqingyu
 * @Author: liqingyu
 * @Date: 2020/7/30 9:42
 */
@EqualsAndHashCode(callSuper = true)
@Data
@Entity
@Table(name = "asse_half_store_record")
public class AsseHalfStoreRecord extends BaseModel {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    /**
     * 生产令编号
     */
    private String prodNo;
    /**
     * 类型（专业）
     */
    private String special;
    /**
     * 部分ID
     */
    private Integer partId;
    /**
     * 图名
     */
    @Column(columnDefinition = "nvarchar(255)")
    private String drawName;
    /**
     * 图号
     */
    @Column(columnDefinition = "nvarchar(255)")
    private String drawNo;
    /**
     * 重量
     */
    @Column(columnDefinition = "decimal(32,8)")
    private BigDecimal weight;
    /**
     * 零件数量
     */
    private Integer drawNum;
    /**
     * 材质
     */
    @Column(columnDefinition = "nvarchar(255)")
    private String quality;
    /**
     * 规格
     */
    @Column(columnDefinition = "nvarchar(255)")
    private String spec;
    /**
     * 出入库方式：1是入库，2是出库，3是划拨出库
     */
    private Integer storeType;
    /**
     * 记录类别：1是正常，2是冲单
     */
    private Integer recordType;
    /**
     * 存放地点
     */
    @Column(columnDefinition = "nvarchar(255)")
    private String storeAddr;
    /**
     * 入库/入库/退库/返库/划拨出库/划拨返库登记人员工编号
     */
    @Column(columnDefinition = "nvarchar(255)")
    private String storageRegisterCode;
    /**
     * 入库/入库/退库/返库/划拨出库/划拨返库时间
     */
    private Date storageTime;
    /**
     * 质检意见
     */
    @Column(columnDefinition = "nvarchar(255)")
    private String checkOpinion;
    /**
     * 备注
     */
    @Column(columnDefinition = "nvarchar(255)")
    private String remark;
    /**
     * 外键：依赖库存表主键
     */
    private Integer storeId;
    /**
     * 替换的单据主键，外键：依赖半成品库出入库记录表主键
     */
    private Integer replaceId;
    /**
     * 数据来源：1=生产转序（默认），2=派工转序
     */
    @Column(nullable = false, columnDefinition = "tinyint")
    private Integer sourceType;


}